闲扯
多项式乘法练习题
题面
Solution
我们设 $s_{n,m}=\begin{Bmatrix}
n\\
m
\end{Bmatrix}$ 。
考虑第二类斯特林数的通项式:
可以发现这是一个卷积的形式。
我们设 $\hat{A}=\sum_{i=0}^{\infin}\frac{(-1)^i}{i!}x^i,\hat{B}=\sum_{i=0}^{\infin}\frac{i^n}{i!}x_i,\hat{S}=\sum_{i=0}^{\infin}s_i\cdot x_i$ 。
我们有 $\hat{S}=\hat{A}\cdot \hat{B}$ ,直接上 $NTT$ 即可。
考虑怎么证明通项式。
由定义可知 $s_{n,m}$ 表示 $n$ 个数恰好分入 $m$ 个集合的方案数。
考虑容斥。
我们枚举 $i$ 表示有 $i$ 个集合一定不选,方案数为 $C_m^i$ ,其他的任意放入剩下的 $m-i$ 个集合中,方案数为 $(m-i)^n$ ,由于集合是不区分的,所以还要除以 $m!$ 。
加上容斥系数,我们即可得到上方的通项式。
Code
1 |
|